//package com.linkgie.galaxyframework.persistence;
//
///**
// * 持久化数据库；
// * <p>
// * 作为统一的接口，封装了对
// * 
// * @author huanghaiquan
// *
// */
//public interface PersistentDatabase {
//	
////	/**
////	 * 返回指定的类型的持久化记录的存储接口；
////	 * 
////	 * @param <T>
////	 * @param persistentClass
////	 * @return
////	 */
////	<T extends PersistentObject> PersistentRepository<T> getRepository(Class<T> persistentClass);
//
//	/**
//	 * 插入一条新记录；
//	 * 
//	 * @param <T> 新纪录的实体类型；
//	 * @param po  新纪录的持久化对象(PO, PersistentObject）；
//	 * @return
//	 */
//	default <T extends PersistentObject> T insert(T po) {
//		return insert(po, po.getClass());
//	};
//
//	/**
//	 * 插入一条新记录；
//	 * 
//	 * @param <T> 新纪录的实体类型；
//	 * @param po 新纪录的持久化对象(PO, PersistentObject）；
//	 * @param persistentClass 持久化类型的类对象；
//	 * @return
//	 */
//	<T extends PersistentObject> T insert(T po, Class<?> persistentClass);
//
//	/**
//	 * 更新；
//	 * 
//	 * @param <T>
//	 * @param po
//	 * @return
//	 */
//	default <T extends PersistentObject> T update(T po) {
//		return update(po, po.getClass());
//	};
//	
//	/**
//	 * 更新；
//	 * 
//	 * @param <T>
//	 * @param po
//	 * @param persistentClass
//	 * @return
//	 */
//	<T extends PersistentObject> T update(T po, Class<?> persistentClass);
//
//}
